package com.hp.modules.sys.entity;

import com.hp.common.base.YesNoEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import tk.mybatis.mapper.annotation.LogicDelete;

import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;

/**
 * @author:mcfan
 * @description:实体类-菜单
 * @date: create in 16:07 2021/4/7
 */
@Table(name = "sys_menu")
@ApiModel(description = "菜单")
public class SysMenu implements Serializable {
    /**
     *
     */
    private static final long serialVersionUID = -1L;
    @Id
    @ApiModelProperty(value = "主键",position = 1)
    private Long id;
    @ApiModelProperty(value = "父菜单id", position = 10)
    private Long parentId;
    @ApiModelProperty(value = "菜单名称", position = 15)
    private String name;
    @ApiModelProperty(value = "排序", position = 20)
    private Double sort;
    @ApiModelProperty(value = "路由名称", position = 25)
    private String routeName;
    @ApiModelProperty(value = "路由地址", position = 30)
    private String path;
    @ApiModelProperty(value = "图标", position = 35)
    private String icon;
    @ApiModelProperty(value = "是否显示(1->不显示|NO,2->显示|YES)", position = 40)
    private YesNoEnum isShow;
    @ApiModelProperty(value = "是否缓存(1->不缓存|NO,2->缓存|YES)", position = 45)
    private YesNoEnum isCache;
    @ApiModelProperty(value = "备注", position = 50)
    private String remark;
    @ApiModelProperty(value = "创建时间", position = 55)
    private Date createTime;
    @ApiModelProperty(value = "更新时间", position = 60)
    private Date updateTime;
    @ApiModelProperty(value = "是否删除(1->未删除|NO,2->已删除|YES)", position = 65)
    @LogicDelete(isDeletedValue=YesNoEnum.Y,notDeletedValue=YesNoEnum.N)
    private YesNoEnum isDeleted;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getParentId() {
        return parentId;
    }

    public void setParentId(Long parentId) {
        this.parentId = parentId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Double getSort() {
        return sort;
    }

    public void setSort(Double sort) {
        this.sort = sort;
    }

    public String getRouteName() {
        return routeName;
    }

    public void setRouteName(String routeName) {
        this.routeName = routeName;
    }

    public String getPath() {
        return path;
    }

    public void setPath(String path) {
        this.path = path;
    }

    public String getIcon() {
        return icon;
    }

    public void setIcon(String icon) {
        this.icon = icon;
    }

    public YesNoEnum getIsShow() {
        return isShow;
    }

    public void setIsShow(YesNoEnum isShow) {
        this.isShow = isShow;
    }

    public YesNoEnum getIsCache() {
        return isCache;
    }

    public void setIsCache(YesNoEnum isCache) {
        this.isCache = isCache;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public YesNoEnum getIsDeleted() {
        return isDeleted;
    }

    public void setIsDeleted(YesNoEnum isDeleted) {
        this.isDeleted = isDeleted;
    }
}
